using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;

namespace Blimpbots.Recognition
{
    public interface ICamera
    {
        event EventHandler NewFrame;
        Bitmap LastFrame { get ; }
        DateTime LastFrameTimestamp { get ; }
        string Name { get; }
        Point3D EstimateCoordinate(Point2D imagePoint, double depth, out DotNetMatrix.GeneralMatrix ellipseRotation);
        double EstimateDepth(Point2D imagePoint, double z);
        Point2D Undistort(Point2D pt);
        Bitmap CaptureFrame();
        int FrameNumber { get; }
        void Start();
        void Stop();
    }
}
